package com.gopay.common.domain.cps.transfer;

import com.gopay.common.constants.approval.DecisionValue;
import com.gopay.common.constants.trans.ForcedDudectOpType;
import com.gopay.common.domain.BaseEntity;

import java.math.BigDecimal;

/**
 * 强制扣款到银行VO
 *
 * @Tran00704VO
 * @AUTHOR lx
 * @2017/3/16 19:43 www.gopay.com.cn Inc.All rights reserved.
 */
public class Tran00704VO extends BaseEntity {

    public static final String MAPKEY_PAYORDER = "payOrder";


    private String userId;

    private String custId;

    private String acctId;

    private BigDecimal txnAmt;

    private String remark;

    private BankPayeeVO bank;

    private String gopayOrderId;

    /**
     * 审批结果 DecisionValue
     * 请结算人员审批结果
     */
    private DecisionValue decision;

    private String decisionMsg;


    /**
     * 操作类型：制单审核  ForcedDudectOpType
     */
    private ForcedDudectOpType opType;

    private boolean isOffPay;

    /**
     * 线下付款银行代码
     */
    private String offLineBankCode;

    /**
     * 线下付款银行订单号
     */
    private String offLineBankOrderNum;

    /**
     * 是否自动结算转线下
     */
    private boolean isAuto2Offline = false;

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getCustId() {
        return custId;
    }

    public void setCustId(String custId) {
        this.custId = custId;
    }

    public String getAcctId() {
        return acctId;
    }

    public void setAcctId(String acctId) {
        this.acctId = acctId;
    }

    public BigDecimal getTxnAmt() {
        return txnAmt;
    }

    public void setTxnAmt(BigDecimal txnAmt) {
        this.txnAmt = txnAmt;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public BankPayeeVO getBank() {
        return bank;
    }

    public void setBank(BankPayeeVO bank) {
        this.bank = bank;
    }

    public String getGopayOrderId() {
        return gopayOrderId;
    }

    public void setGopayOrderId(String gopayOrderId) {
        this.gopayOrderId = gopayOrderId;
    }

    public DecisionValue getDecision() {
        return decision;
    }

    public void setDecision(DecisionValue decision) {
        this.decision = decision;
    }

    public String getDecisionMsg() {
        return decisionMsg;
    }

    public void setDecisionMsg(String decisionMsg) {
        this.decisionMsg = decisionMsg;
    }

    public ForcedDudectOpType getOpType() {
        return opType;
    }

    public void setOpType(ForcedDudectOpType opType) {
        this.opType = opType;
    }

    public boolean isOffPay() {
        return isOffPay;
    }

    public void setOffPay(boolean offPay) {
        isOffPay = offPay;
    }

    public String getOffLineBankCode() {
        return offLineBankCode;
    }

    public void setOffLineBankCode(String offLineBankCode) {
        this.offLineBankCode = offLineBankCode;
    }

    public String getOffLineBankOrderNum() {
        return offLineBankOrderNum;
    }

    public void setOffLineBankOrderNum(String offLineBankOrderNum) {
        this.offLineBankOrderNum = offLineBankOrderNum;
    }

    public boolean isAuto2Offline() {
        return isAuto2Offline;
    }

    public void setAuto2Offline(boolean auto2Offline) {
        isAuto2Offline = auto2Offline;
    }
}
